//抽离基础路径  拦截所有请求 添加路径前缀
axios.defaults.baseURL = 'http://api-breakingnews-web.itheima.net'

// 从需求角度出发,没有必要所有请求都添加token

// axios.defaults.headers.common['Authorization'] = localStorage.getItem('token')



//添加请求拦截器
//use方法里面可以传递两个函数
axios.interceptors.request.use(function (config) {
    // 打印config从参数
    // console.log(config)
    //判断路径中,是否包含/api 或者 /my
    //或者>=0 或者 !==-1 或者 >-1 都说明找到了
    if (config.url.indexOf('/my') !== -1) {
        //此处是赋值
        // config.headers = {
        //     Authorization: localStorage.getItem('token')
        // }
        // 所有头信息的设置,不要使用对象赋值,要是用.属性,不会出现覆盖
        config.headers.Authorization = localStorage.getItem('token')
    }
    // 修改完毕的config需要返回
    return config

}, function (error) {
    return Promise.reject(error)
})

//添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 输出响应结果
    // console.log(response)
    if (response.data.message === "身份认证失败！") {
        // 跳转到登录页面,销毁token
        location.href = '/login.html'
        localStorage.removeItem('token')
        return
    }
    // 返回response
    return response

}, function (error) {
    return Promise.reject(error)

})